﻿using System.Collections.Generic;

namespace StudentInfoSystem.Core.Interfaces;

public interface IStatisticsService
{
    /// <summary>
    /// 获取学院分布统计
    /// </summary>
    /// <param name="college">可选，按学院过滤</param>
    /// <param name="academicYear">可选，按学年过滤(格式: yyyy)</param>
    Dictionary<string, int> GetCollegeDistribution(string? college = null, string? academicYear = null);

    /// <summary>
    /// 获取院系列表分布统计
    /// </summary>
    /// <param name="college">可选，按学院过滤</param>
    /// <param name="academicYear">可选，按学年过滤(格式: yyyy)</param>
    Dictionary<string, int> GetDepartmentDistribution(string? college = null, string? academicYear = null);

    /// <summary>
    /// 获取班级分布统计
    /// </summary>
    /// <param name="college">可选，按学院过滤</param>
    /// <param name="academicYear">可选，按学年过滤(格式: yyyy)</param>
    Dictionary<string, int> GetClassDistribution(string? college = null, string? academicYear = null);

    /// <summary>
    /// 获取生源地分布统计
    /// </summary>
    /// <param name="college">可选，按学院过滤</param>
    /// <param name="academicYear">可选，按学年过滤(格式: yyyy)</param>
    Dictionary<string, int> GetHometownDistribution(string? college = null, string? academicYear = null);
}